package com.sky.config;

import lombok.extern.slf4j.Slf4j;
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.data.redis.serializer.StringRedisSerializer;

@Configuration
@Slf4j
public class RedisConfiguration {

   @Bean
   public RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory){
       log.info("创建一个 redisTemplate模板对象");//对象不创建底层也会自动创建
       // 因为我们通过java程序 把 代码 要完成序列化 才能传输到 redis上
       // java对象 序列化规则 和 redis序列化规则是不一样的  这样就会造成数据显示有差别
       //先创建RedisTemplate
       RedisTemplate redisTemplate = new RedisTemplate();
       //设置连接工厂
       redisTemplate.setConnectionFactory(redisConnectionFactory);
       //设置 redis key的序列化
       redisTemplate.setKeySerializer(new StringRedisSerializer());
                                //  键 按照普通的字符串形式序列化
       return  redisTemplate;
   }
}
